package com.woniuxy.productservice.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.woniuxy.core.util.PageInfo;
import com.woniuxy.productdao.model.TeamProduct;
import com.woniuxy.productmodel.dto.TeamProductDto;
import com.woniuxy.productmodel.form.AddTeamProductForm;
import com.woniuxy.productmodel.form.ListTeamProductForm;
import com.woniuxy.productmodel.form.UpdateTeamProductForm;
import com.woniuxy.productmodel.form.VenueListTeamProductForm;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;

/**
 * <p>
 * 团课产品表 服务类
 * </p>
 *
 * @author 冉杰
 * @since 2024-01-15
 */
public interface TeamProductService extends IService<TeamProduct> {

    TeamProductDto addTeamProduct(AddTeamProductForm form, Integer venueId) throws IOException;

    void updateTeamProduct(UpdateTeamProductForm form, Integer venueId);

    void updateProductImage(MultipartFile updateFile, Integer teamProductId, Integer venueId) throws IOException;

    TeamProductDto findTeamProductById(Integer teamProductId);

    PageInfo<TeamProductDto> venueListTeamProduct(VenueListTeamProductForm form, Integer venueId);

    PageInfo<TeamProductDto> listTeamProduct(ListTeamProductForm form);

    void enableTeamProduct(Integer teamProductId, Integer venueId);

    void disabledTeamProduct(Integer teamProductId, Integer venueId);
}
